第8章 循环结构
三类循环:for、while、do‑while;配合break、continue控制循环。
8.1 for循环(适合已知循环次数)
for(初始化;条件;更新){
循环体;
}
执行流程:
- 初始化(只跑1次)
- 判断条件;条件为真执行循环体;假退出循环
- 执行更新表达式;回到步骤2
示例输出1‑5:
for(int i=1;i<=5;i++)
{
cout<<i<<" ";
}
三个部分都可以省略,但是两个分号必须写;
for(;;)无限死循环。
8.2 while循环(先判断,后执行)
适合不知道循环次数,知道终止条件。
while(条件表达式)
{
循环体;
}
循环体内一定要修改条件相关变量,否则死循环。 示例1‑10求和:
int sum=0,i=1;
while(i<=10)
{
sum +=i;
i++;
}
8.3 do‑while循环(先执行一次,后判断)
**循环体至少执行1次!**末尾分号不可丢。
do{
循环体;
}while(条件);
示例,强制用户输入正数:
int num;
do{
printf("输入正整数:");
scanf("%d",&num);
}while(num <=0);
8.4 循环控制 break、continue
- break:立刻终止当前这一层循环,跳出循环。
//找到1‑10第一个3的倍数
for(int i=1;i<=10;i++){
if(i%3 ==0){
cout<<i;
break;
}
}
- continue:跳过本次循环剩下语句,直接进入下一轮条件判断,循环不会终止。
//输出1‑10奇数
for(int i=1;i<=10;i++){
if(i%2 ==0){
continue;
}
cout<<i<<" ";
}
区别:
break结束整个循环;continue只跳过本轮。